function deepClone(obj = {} ){
  if(typeof obj !== 'object' || obj === null) {
    return obj
  }

  let result 
  if (obj instanceof Array) {
    result = []
  }else {
    result = {}
  }

  for(let key in obj) {
    if(obj.hasOwnproperty(key)) {
      result[key] = deepClone(obj[key])
    }
  }

  return result


}

